Generally, software that consumes web services directs calls up the web services via an endpoint URI. However, many times these web services may have a slow response time or throughput, or may not have a good overall reputation. Furthermore, the software may not be capable of determining the most suitable web service to use.